import pandas as pd
import re

def handler(row:pd.Series)->pd.Series:
    try:
        cmpl = re.compile("([0-9,]{1,6}х{0,1}x{0,1}[0-9,]{1,5}х{0,1}x{0,1}[0-9,]{0,5})")
        cmpl2 = re.compile("(Т[0-9,]{1,3}-[0-9,]{1,3})")
        m = cmpl.search(str(row['Полное наименование материала']))
        m2 = cmpl2.search(str(row['Наименование УП']))
        res:str = "-" if m is None else m.group()
        res2:str = "-" if m2 is None else m2.group()
        print(f"{row['Полное наименование материала']} -> {res}")
        th=0
        newTh = ""
        if res!="-":
            lst= [float(i) for i in res.replace(",",".").replace("x","|").replace("х","|").split("|")]
            th = min(lst)
            if th<=2.85: newTh="Т1,6-2,8"
            else: newTh="Т2,9-4"
        row["Размеры"]=res
        row["Толщина"]=str(th).replace(".",",").replace(",0","")
        row["Наименование УП нов"]=str(row['Наименование УП']).replace(res2,newTh)
        return row
    except Exception as exp: 
        row["Размеры"] = f"{exp}"
        row["Толщина"]= "-1"
        row["Наименование УП нов"]="-"
        return row

if __name__=="__main__":
    df = pd.read_excel("D:\\work\\Укрупнение\\tmp\\укрупнение_4.xlsx",sheet_name="Лист2")
    df = df.apply(handler,axis=1)
    df.to_excel("D:\\work\\Укрупнение\\tmp\\result.xlsx",index=False)
    print("done")